﻿using System;

namespace TimerTask.Model.Common
{
    public class MsgResult<T>
    {

        public int Code { set; get; }
        public string Msg { get; set; }
        public T Data { get; set; }


        public static MsgResult<object> Success()
        {
            return new MsgResult<object>()
            {
                Code = 1,
                Msg = "ok"
            };
        }

        public static MsgResult<T> Success(T data)
        {
            return new MsgResult<T>()
            {
                Code = 1,
                Data = data,
                Msg = "ok"
            };
        }

        public static MsgResult<T> Error(int code, string msg)
        {
            return new MsgResult<T>()
            {
                Code = code,
                Msg = msg
            };
        }

        public static MsgResult<T> Error(string msg)
        {
            return new MsgResult<T>
            {
                Code = 0,
                Msg = msg
            };
        }
    }
}
